home *** CD-ROM | disk | FTP | other *** search
/ IRIX Base Documentation 2002 November / SGI IRIX Base Documentation 2002 November.iso / usr / share / catman / p_man / cat3 / SCSL / zgeesx.z / zgeesx
Encoding:
Text File  |  2002-10-03  |  7.8 KB  |  199 lines

  1.  
  2.  
  3.  
  4. ZZZZGGGGEEEEEEEESSSSXXXX((((3333SSSS))))                                                          ZZZZGGGGEEEEEEEESSSSXXXX((((3333SSSS))))
  5.  
  6.  
  7.  
  8. NNNNAAAAMMMMEEEE
  9.      ZGEESX - compute for an N-by-N complex nonsymmetric matrix A, the
  10.      eigenvalues, the Schur form T, and, optionally, the matrix of Schur
  11.      vectors Z
  12.  
  13. SSSSYYYYNNNNOOOOPPPPSSSSIIIISSSS
  14.      SUBROUTINE ZGEESX( JOBVS, SORT, SELECT, SENSE, N, A, LDA, SDIM, W, VS,
  15.                         LDVS, RCONDE, RCONDV, WORK, LWORK, RWORK, BWORK, INFO
  16.                         )
  17.  
  18.          CHARACTER      JOBVS, SENSE, SORT
  19.  
  20.          INTEGER        INFO, LDA, LDVS, LWORK, N, SDIM
  21.  
  22.          DOUBLE         PRECISION RCONDE, RCONDV
  23.  
  24.          LOGICAL        BWORK( * )
  25.  
  26.          DOUBLE         PRECISION RWORK( * )
  27.  
  28.          COMPLEX*16     A( LDA, * ), VS( LDVS, * ), W( * ), WORK( * )
  29.  
  30.          LOGICAL        SELECT
  31.  
  32.          EXTERNAL       SELECT
  33.  
  34. IIIIMMMMPPPPLLLLEEEEMMMMEEEENNNNTTTTAAAATTTTIIIIOOOONNNN
  35.      These routines are part of the SCSL Scientific Library and can be loaded
  36.      using either the -lscs or the -lscs_mp option.  The -lscs_mp option
  37.      directs the linker to use the multi-processor version of the library.
  38.  
  39.      When linking to SCSL with -lscs or -lscs_mp, the default integer size is
  40.      4 bytes (32 bits). Another version of SCSL is available in which integers
  41.      are 8 bytes (64 bits).  This version allows the user access to larger
  42.      memory sizes and helps when porting legacy Cray codes.  It can be loaded
  43.      by using the -lscs_i8 option or the -lscs_i8_mp option. A program may use
  44.      only one of the two versions; 4-byte integer and 8-byte integer library
  45.      calls cannot be mixed.
  46.  
  47. PPPPUUUURRRRPPPPOOOOSSSSEEEE
  48.      ZGEESX computes for an N-by-N complex nonsymmetric matrix A, the
  49.      eigenvalues, the Schur form T, and, optionally, the matrix of Schur
  50.      vectors Z. This gives the Schur factorization A = Z*T*(Z**H). Optionally,
  51.      it also orders the eigenvalues on the diagonal of the Schur form so that
  52.      selected eigenvalues are at the top left; computes a reciprocal condition
  53.      number for the average of the selected eigenvalues (RCONDE); and computes
  54.      a reciprocal condition number for the right invariant subspace
  55.      corresponding to the selected eigenvalues (RCONDV).  The leading columns
  56.      of Z form an orthonormal basis for this invariant subspace.
  57.  
  58.      For further explanation of the reciprocal condition numbers RCONDE and
  59.      RCONDV, see Section 4.10 of the LAPACK Users' Guide (where these
  60.  
  61.  
  62.  
  63.                                                                         PPPPaaaaggggeeee 1111
  64.  
  65.  
  66.  
  67.  
  68.  
  69.  
  70. ZZZZGGGGEEEEEEEESSSSXXXX((((3333SSSS))))                                                          ZZZZGGGGEEEEEEEESSSSXXXX((((3333SSSS))))
  71.  
  72.  
  73.  
  74.      quantities are called s and sep respectively).
  75.  
  76.      A complex matrix is in Schur form if it is upper triangular.
  77.  
  78.  
  79. AAAARRRRGGGGUUUUMMMMEEEENNNNTTTTSSSS
  80.      JOBVS   (input) CHARACTER*1
  81.              = 'N': Schur vectors are not computed;
  82.              = 'V': Schur vectors are computed.
  83.  
  84.      SORT    (input) CHARACTER*1
  85.              Specifies whether or not to order the eigenvalues on the diagonal
  86.              of the Schur form.  = 'N': Eigenvalues are not ordered;
  87.              = 'S': Eigenvalues are ordered (see SELECT).
  88.  
  89.      SELECT  (input) LOGICAL FUNCTION of one COMPLEX*16 argument
  90.              SELECT must be declared EXTERNAL in the calling subroutine.  If
  91.              SORT = 'S', SELECT is used to select eigenvalues to order to the
  92.              top left of the Schur form.  If SORT = 'N', SELECT is not
  93.              referenced.  An eigenvalue W(j) is selected if SELECT(W(j)) is
  94.              true.
  95.  
  96.      SENSE   (input) CHARACTER*1
  97.              Determines which reciprocal condition numbers are computed.  =
  98.              'N': None are computed;
  99.              = 'E': Computed for average of selected eigenvalues only;
  100.              = 'V': Computed for selected right invariant subspace only;
  101.              = 'B': Computed for both.  If SENSE = 'E', 'V' or 'B', SORT must
  102.              equal 'S'.
  103.  
  104.      N       (input) INTEGER
  105.              The order of the matrix A. N >= 0.
  106.  
  107.      A       (input/output) COMPLEX*16 array, dimension (LDA, N)
  108.              On entry, the N-by-N matrix A.  On exit, A is overwritten by its
  109.              Schur form T.
  110.  
  111.      LDA     (input) INTEGER
  112.              The leading dimension of the array A.  LDA >= max(1,N).
  113.  
  114.      SDIM    (output) INTEGER
  115.              If SORT = 'N', SDIM = 0.  If SORT = 'S', SDIM = number of
  116.              eigenvalues for which SELECT is true.
  117.  
  118.      W       (output) COMPLEX*16 array, dimension (N)
  119.              W contains the computed eigenvalues, in the same order that they
  120.              appear on the diagonal of the output Schur form T.
  121.  
  122.      VS      (output) COMPLEX*16 array, dimension (LDVS,N)
  123.              If JOBVS = 'V', VS contains the unitary matrix Z of Schur
  124.              vectors.  If JOBVS = 'N', VS is not referenced.
  125.  
  126.  
  127.  
  128.  
  129.                                                                         PPPPaaaaggggeeee 2222
  130.  
  131.  
  132.  
  133.  
  134.  
  135.  
  136. ZZZZGGGGEEEEEEEESSSSXXXX((((3333SSSS))))                                                          ZZZZGGGGEEEEEEEESSSSXXXX((((3333SSSS))))
  137.  
  138.  
  139.  
  140.      LDVS    (input) INTEGER
  141.              The leading dimension of the array VS.  LDVS >= 1, and if JOBVS =
  142.              'V', LDVS >= N.
  143.  
  144.      RCONDE  (output) DOUBLE PRECISION
  145.              If SENSE = 'E' or 'B', RCONDE contains the reciprocal condition
  146.              number for the average of the selected eigenvalues.  Not
  147.              referenced if SENSE = 'N' or 'V'.
  148.  
  149.      RCONDV  (output) DOUBLE PRECISION
  150.              If SENSE = 'V' or 'B', RCONDV contains the reciprocal condition
  151.              number for the selected right invariant subspace.  Not referenced
  152.              if SENSE = 'N' or 'E'.
  153.  
  154.      WORK    (workspace/output) COMPLEX*16 array, dimension (LWORK)
  155.              On exit, if INFO = 0, WORK(1) returns the optimal LWORK.
  156.  
  157.      LWORK   (input) INTEGER
  158.              The dimension of the array WORK.  LWORK >= max(1,2*N).  Also, if
  159.              SENSE = 'E' or 'V' or 'B', LWORK >= 2*SDIM*(N-SDIM), where SDIM
  160.              is the number of selected eigenvalues computed by this routine.
  161.              Note that 2*SDIM*(N-SDIM) <= N*N/2.  For good performance, LWORK
  162.              must generally be larger.
  163.  
  164.      RWORK   (workspace) DOUBLE PRECISION array, dimension (N)
  165.  
  166.      BWORK   (workspace) LOGICAL array, dimension (N)
  167.              Not referenced if SORT = 'N'.
  168.  
  169.      INFO    (output) INTEGER
  170.              = 0: successful exit
  171.              < 0: if INFO = -i, the i-th argument had an illegal value.
  172.              > 0: if INFO = i, and i is
  173.              <= N: the QR algorithm failed to compute all the
  174.              eigenvalues; elements 1:ILO-1 and i+1:N of W contain those
  175.              eigenvalues which have converged; if JOBVS = 'V', VS contains the
  176.              transformation which reduces A to its partially converged Schur
  177.              form.  = N+1: the eigenvalues could not be reordered because some
  178.              eigenvalues were too close to separate (the problem is very ill-
  179.              conditioned); = N+2: after reordering, roundoff changed values of
  180.              some complex eigenvalues so that leading eigenvalues in the Schur
  181.              form no longer satisfy SELECT=.TRUE.  This could also be caused
  182.              by underflow due to scaling.
  183.  
  184. SSSSEEEEEEEE AAAALLLLSSSSOOOO
  185.      INTRO_LAPACK(3S), INTRO_SCSL(3S)
  186.  
  187.      This man page is available only online.
  188.  
  189.  
  190.  
  191.  
  192.  
  193.  
  194.  
  195.                                                                         PPPPaaaaggggeeee 3333
  196.  
  197.  
  198.  
  199.